from RandomList import GetRandomList

""" 
简单说就是将两次冒泡排序方法综合到一起，
从前到后冒一次，紧接着从后向前冒一次，
这样就完成一次鸡尾酒排序。
"""
def cocktail_sort(arr):
    rt = len(arr) - 1  
    lt = 0  
    flag = True  
    while flag and lt < rt:
        flag = False  
        for i in range(lt, rt):
            if arr[i] > arr[i+1]:
                flag = True
                arr[i], arr[i+1] = arr[i+1], arr[i]
                rt = i  
        for i in range(rt, lt, -1):
            if arr[i] < arr[i-1]:
                flag = True
                arr[i-1], arr[i] = arr[i], arr[i-1]
                lt = i  
    return arr










if __name__ == "__main__":
    Arr = GetRandomList(100)
    Arr = cocktail_sort(Arr)
    print(Arr)